package com.ruoyi.tsjData.service.impl;

import java.util.List;

import com.ruoyi.common.config.RuoYiConfig;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.ProcessPictureUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.tsjData.domain.result.DataTshjSdResult;
import com.ruoyi.tsjData.mapper.DataTshjSdResultMapper;
import com.ruoyi.tsjData.service.IDataTshjSdResultService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;


/**
 * 提升机-速度测试结果Service业务层处理
 * 
 * @author ruoyi
 * @date 2023-11-07
 */
@Service
public class DataTshjSdResultServiceImpl implements IDataTshjSdResultService
{
    @Autowired(required = false)
    private DataTshjSdResultMapper dataTshjSdResultMapper;

    /**
     * 查询提升机-速度测试结果
     * 
     * @param sdResultId 提升机-速度测试结果主键
     * @return 提升机-速度测试结果
     */
    @Override
    public DataTshjSdResult selectDataTshjSdResultBySdResultId(Long sdResultId)
    {
        return dataTshjSdResultMapper.selectDataTshjSdResultBySdResultId(sdResultId);
    }

    /**
     * 查询提升机-速度测试结果列表
     * 
     * @param dataTshjSdResult 提升机-速度测试结果
     * @return 提升机-速度测试结果
     */
    @Override
    public List<DataTshjSdResult> selectDataTshjSdResultList(DataTshjSdResult dataTshjSdResult)
    {
        return dataTshjSdResultMapper.selectDataTshjSdResultList(dataTshjSdResult);
    }

    /**
     * 根据任务id查询速度测试结果
     * @param dataTaskId
     * @return
     */
    @Override
    public List<DataTshjSdResult> selectDataTshjSdResultByDataTaskId(Long dataTaskId, Long dataResultId) {
        return dataTshjSdResultMapper.selectDataTshjSdResultByDataTaskId(dataTaskId, dataResultId);
    }

    /**
     * 新增提升机-速度测试结果
     * 
     * @param dataTshjSdResult 提升机-速度测试结果
     * @return 结果
     */
    @Override
    public int insertDataTshjSdResult(DataTshjSdResult dataTshjSdResult)
    {
        dataTshjSdResult.setCreateTime(DateUtils.getNowDate());
        String rootPath = RuoYiConfig.getProfile() + RuoYiConfig.getChartPath() + "/";
        //上提速度电流图路径
        String sddlupImg = System.currentTimeMillis() + "-上提速度电流图.png";
        //下放速度电流图路径
        String sddldownImg = System.currentTimeMillis() + "-下放速度电流图.png";
        //上提速度图路径
        String sdupImg = System.currentTimeMillis() + "-上提速度图.png";
        //下放速度图路径
        String sddownImg = System.currentTimeMillis() + "-下放速度图.png";
        //上提电流图路径
        String dlupImg = System.currentTimeMillis() + "-上提电流图.png";
        //下放电流图路径
        String dldownImg = System.currentTimeMillis() + "-下放电流图.png";
        //上提井深速度图路径
        String jshsdupImg = System.currentTimeMillis() + "-上提井深速度图.png";
        //下放井深速度图路径
        String jshsddownImg = System.currentTimeMillis() + "-下放井深速度图.png";
        //上提前40S速度图路径
        String q40ssdupImg = System.currentTimeMillis() + "-上提前40S速度图.png";
        //下放前40S速度图路径
        String q40ssddownImg = System.currentTimeMillis() + "-下放前40S速度图.png";
        //上提后40S速度图路径
        String h40ssdupImg = System.currentTimeMillis() + "-上提后40S速度图.png";
        //下放后40S速度图路径
        String h40ssddownImg = System.currentTimeMillis() + "-下放后40S速度图.png";
        //上提加速度图路径
        String jsdupImg = System.currentTimeMillis() + "-上提加速度图.png";
        //下放加速度图路径
        String jsddownImg = System.currentTimeMillis() + "-下放加速度图.png";
        //svg转png
        if(StringUtils.isNotEmpty(dataTshjSdResult.getSddlupSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getSddlupSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + sddlupImg);
            dataTshjSdResult.setSddlupImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + sddlupImg);
        }
        if(StringUtils.isNotEmpty(dataTshjSdResult.getSddldownSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getSddldownSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + sddldownImg);
            dataTshjSdResult.setSddldownImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + sddldownImg);
        }
        if(StringUtils.isNotEmpty(dataTshjSdResult.getSdupSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getSdupSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + sdupImg);
            dataTshjSdResult.setSdupImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + sdupImg);
        }
        if(StringUtils.isNotEmpty(dataTshjSdResult.getSddownSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getSddownSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + sddownImg);
            dataTshjSdResult.setSddownImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + sddownImg);
        }
        if(StringUtils.isNotEmpty(dataTshjSdResult.getDlupSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getDlupSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + dlupImg);
            dataTshjSdResult.setDlupImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + dlupImg);
        }
        if(StringUtils.isNotEmpty(dataTshjSdResult.getDldownSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getDldownSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + dldownImg);
            dataTshjSdResult.setDldownImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + dldownImg);
        }
        if(StringUtils.isNotEmpty(dataTshjSdResult.getJshsdupSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getJshsdupSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + jshsdupImg);
            dataTshjSdResult.setJshsdupImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + jshsdupImg);
        }
        if(StringUtils.isNotEmpty(dataTshjSdResult.getJshsddownSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getJshsddownSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + jshsddownImg);
            dataTshjSdResult.setJshsddownImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + jshsddownImg);
        }
        if(StringUtils.isNotEmpty(dataTshjSdResult.getQ40ssdupSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getQ40ssdupSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + q40ssdupImg);
            dataTshjSdResult.setQ40ssdupImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + q40ssdupImg);
        }
        if(StringUtils.isNotEmpty(dataTshjSdResult.getQ40ssddownSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getQ40ssddownSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + q40ssddownImg);
            dataTshjSdResult.setQ40ssddownImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + q40ssddownImg);
        }
        if(StringUtils.isNotEmpty(dataTshjSdResult.getH40ssdupSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getH40ssdupSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + h40ssdupImg);
            dataTshjSdResult.setH40ssdupImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + h40ssdupImg);
        }
        if(StringUtils.isNotEmpty(dataTshjSdResult.getH40ssddownSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getH40ssddownSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + h40ssddownImg);
            dataTshjSdResult.setH40ssddownImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + h40ssddownImg);
        }
        if(StringUtils.isNotEmpty(dataTshjSdResult.getJsdupSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getJsdupSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + jsdupImg);
            dataTshjSdResult.setJsdupImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + jsdupImg);
        }
        if(StringUtils.isNotEmpty(dataTshjSdResult.getJsddownSvg())) {
            ProcessPictureUtils.convertToPng(dataTshjSdResult.getJsddownSvg(), rootPath + dataTshjSdResult.getDataTaskId() + "/" + jsddownImg);
            dataTshjSdResult.setJsddownImg("/profile/chartPath/" + dataTshjSdResult.getDataTaskId() + "/" + jsddownImg);
        }
        return dataTshjSdResultMapper.insertDataTshjSdResult(dataTshjSdResult);
    }

    /**
     * 修改提升机-速度测试结果
     * 
     * @param dataTshjSdResult 提升机-速度测试结果
     * @return 结果
     */
    @Override
    public int updateDataTshjSdResult(DataTshjSdResult dataTshjSdResult)
    {
        dataTshjSdResult.setUpdateTime(DateUtils.getNowDate());
        return dataTshjSdResultMapper.updateDataTshjSdResult(dataTshjSdResult);
    }

    /**
     * 批量删除提升机-速度测试结果
     * 
     * @param sdResultIds 需要删除的提升机-速度测试结果主键
     * @return 结果
     */
    @Override
    public int deleteDataTshjSdResultBySdResultIds(Long[] sdResultIds)
    {
        return dataTshjSdResultMapper.deleteDataTshjSdResultBySdResultIds(sdResultIds);
    }

    /**
     * 删除提升机-速度测试结果信息
     * 
     * @param sdResultId 提升机-速度测试结果主键
     * @return 结果
     */
    @Override
    public int deleteDataTshjSdResultBySdResultId(Long sdResultId)
    {
        return dataTshjSdResultMapper.deleteDataTshjSdResultBySdResultId(sdResultId);
    }
}
